using System;

/*
 * Created by SharpDevelop.
 * User: Carlos
 * Date: 20/05/2009
 * Time: 11:34 p.m.
 */
namespace Lambda.Data.NetQuery{
	/// <summary>
	/// BaseField. Campo base
	/// </summary>
	public abstract class BaseCommandField
	{
		#region Fields && Properties
			private ValueType valueType;			
			public ValueType ValueType {
				get { return valueType; }
			}		
			private int maxLength;			
			public int MaxLength {
				get { return maxLength; }
			}		
		#endregion
		#region Constructors
			protected BaseCommandField(ValueType ValueType, int MaxLength) {
				valueType = ValueType;
				maxLength = MaxLength;
			}
		#endregion
	}	
	/// <summary>
	/// Param. Parametro de comando de base de datos
	/// </summary>
	public class Param : BaseCommandField
	{		
		#region Fields && Properties
			public string name;			
			public string Name {
				get { return name; }
			}
		#endregion		
		#region Constructors
			private Param() : base(ValueTypes.String, 0){}
			public Param(string Name, ValueType ValueType) : this(Name, ValueType, 0){}
			public Param(string Name, ValueType ValueType, int MaxLength) : base(ValueType, MaxLength) {
					name = Name;
			}
		#endregion
	}	
}

